Memahami Program Hello World
Kita sudah menjalankan program Hello World dan berinteraksi dengannya. Setelah menuntaskan dasar-dasar sebelumnya, sekarang waktunya membedah seluruh kodenya.
Kode Lengkap
Berikut kode lengkap program Hello World:
module hello_world::hello_world {
use std::string::String;
/// An object that contains an arbitrary string
public struct HelloWorldObject has key, store {
id: UID,
/// A string contained in the object
text: string::String
}
entry fun mint(ctx: &mut TxContext) {
let object = HelloWorldObject {
id: object::new(ctx),
text: string::utf8(b"Hello World!")
};
transfer::public_transfer(object, tx_context::sender(ctx));
}
}
Penjelasan Baris per Baris
Mari kita kupas bagian-bagiannya:
use std::string::String;
- Import module yang diperlukan:
std::string::Stringuntuk tipe string.
public struct HelloWorldObject has key, store {
id: UID,
/// A string contained in the object
text: string::String
}
- Di dalam module kita mendefinisikan struct
HelloWorldObjectdengan field:id: UID unik object.text: String isi pesan.
entry fun mint(ctx: &mut TxContext) {
let object = HelloWorldObject {
id: object::new(ctx),
text: string::utf8(b"Hello World!")
};
transfer::public_transfer(object, tx_context::sender(ctx));
}
- Fungsi
entry fun mintmenerima&mut TxContext.- Membuat instance baru
HelloWorldObject. iddiisi lewatobject::new(ctx).textdiisi string UTF-8 "Hello World!".- Lalu object dipindahkan ke alamat pengirim via
transfer::public_transfer.
- Membuat instance baru
Dengan kata lain, fungsi mint mencetak (mint) object baru dan langsung memberikan kepemilikan ke pemanggil.
Kamu bisa memodifikasi teksnya—coba ganti jadi namamu sendiri, build, dan lihat hasilnya.
Ringkasan
Kita membahas program Hello World: import module, definisi struct object, fungsi mint, dan alur penciptaan + transfer object. Silakan eksperimen lanjut—latihan adalah kunci. Selamat ngoding!